package com.site.wisdom_construction.entity.personnelModule;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.sql.Date;

/**
 * @Description  
 * @Author  DYF
 * @Date 2022-01-15 
 */
@ApiModel (value ="项目管理表实体类",description = "Project")
public class Project {
	/**
	 * 项目信息id
	 */
   	@ApiModelProperty(value = "项目信息id", name = "id")
	private Integer id;

	/**
	 * 项目名称
	 */
   	@ApiModelProperty(value = "项目名称", name = "projectName")
	private String projectName;

	/**
	 * 项目简称
	 */
   	@ApiModelProperty(value = "项目简称", name = "projectReferred")
	private String projectReferred;

	/**
	 * 所属机构
	 */
   	@ApiModelProperty(value = "所属机构", name = "subsidiaryOrgan")
	private String subsidiaryOrgan;

	/**
	 * 中标单位
	 */
   	@ApiModelProperty(value = "中标单位", name = "winningUnit")
	private String winningUnit;

	/**
	 * 工程造价(万元)
	 */
   	@ApiModelProperty(value = "工程造价(万元)", name = "constructionCosts")
	private Double constructionCosts;

	/**
	 * 工程类型
	 */
   	@ApiModelProperty(value = "工程类型", name = "projectType")
	private String projectType;

	/**
	 * 省
	 */
	@ApiModelProperty(value = "省", name = "province")
	private String province;

	/**
	 * 市
	 */
	@ApiModelProperty(value = "市", name = "city")
	private String city;

	/**
	 * 区
	 */
	@ApiModelProperty(value = "区", name = "district")
	private String district;

	/**
	 * 详细地址
	 */
   	@ApiModelProperty(value = "详细地址", name = "detailedAddress")
	private String detailedAddress;

	/**
	 * 状态(0:未开工 1:施工中 2:竣工 3:延期)
	 */
   	@ApiModelProperty(value = "状态(0:未开工 1:施工中 2:竣工 3:延期)", name = "projectStatus")
	private String projectStatus;

	/**
	 * 计划开工日期
	 */
   	@ApiModelProperty(value = "计划开工日期", name = "scheduledCommencementDate")
	@JsonFormat(timezone = "GMT+8", pattern ="yyyy-MM-dd")
	private Date scheduledCommencementDate;

	/**
	 * 计划竣工日期
	 */
   	@ApiModelProperty(value = "计划竣工日期", name = "plannedCompletionDate")
	@JsonFormat(timezone = "GMT+8", pattern ="yyyy-MM-dd")
	private Date plannedCompletionDate;

	/**
	 * 计划施工天数
	 */
   	@ApiModelProperty(value = "计划施工天数", name = "projectConstructionDays")
	private Integer projectConstructionDays;

	/**
	 * 实际开工日期
	 */
   	@ApiModelProperty(value = "实际开工日期", name = "actualCommencementDate")
	@JsonFormat(timezone = "GMT+8", pattern ="yyyy-MM-dd")
	private Date actualCommencementDate;

	/**
	 * 实际结束日期
	 */
   	@ApiModelProperty(value = "实际结束日期", name = "substantialCompletionDate")
	@JsonFormat(timezone = "GMT+8", pattern ="yyyy-MM-dd")
	private Date substantialCompletionDate;

	/**
	 * 实际结束天数
	 */
   	@ApiModelProperty(value = "实际结束天数", name = "actualConstructionDays")
	private Integer actualConstructionDays;

	/**
	 * 是否复工(0:未复工 1:复工)
	 */
   	@ApiModelProperty(value = "是否复工(0:未复工 1:复工)", name = "returnWork")
	private String returnWork;

	/**
	 * 项目简介
	 */
   	@ApiModelProperty(value = "项目简介", name = "projectBrief")
	private String projectBrief;

	/**
	 * 企业宣传片
	 */
   	@ApiModelProperty(value = "企业宣传片", name = "corporateVideo")
	private String corporateVideo;

	public Project(){ super(); }

	public Project(Integer id, String projectName, String projectReferred, String subsidiaryOrgan, String winningUnit, Double constructionCosts, String projectType, String province, String city, String district, String detailedAddress, String projectStatus, Date scheduledCommencementDate, Date plannedCompletionDate, Integer projectConstructionDays, Date actualCommencementDate, Date substantialCompletionDate, Integer actualConstructionDays, String returnWork, String projectBrief, String corporateVideo) {
		this.id = id;
		this.projectName = projectName;
		this.projectReferred = projectReferred;
		this.subsidiaryOrgan = subsidiaryOrgan;
		this.winningUnit = winningUnit;
		this.constructionCosts = constructionCosts;
		this.projectType = projectType;
		this.province = province;
		this.city = city;
		this.district = district;
		this.detailedAddress = detailedAddress;
		this.projectStatus = projectStatus;
		this.scheduledCommencementDate = scheduledCommencementDate;
		this.plannedCompletionDate = plannedCompletionDate;
		this.projectConstructionDays = projectConstructionDays;
		this.actualCommencementDate = actualCommencementDate;
		this.substantialCompletionDate = substantialCompletionDate;
		this.actualConstructionDays = actualConstructionDays;
		this.returnWork = returnWork;
		this.projectBrief = projectBrief;
		this.corporateVideo = corporateVideo;
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public String getProjectReferred() {
		return projectReferred;
	}

	public void setProjectReferred(String projectReferred) {
		this.projectReferred = projectReferred;
	}

	public String getSubsidiaryOrgan() {
		return subsidiaryOrgan;
	}

	public void setSubsidiaryOrgan(String subsidiaryOrgan) {
		this.subsidiaryOrgan = subsidiaryOrgan;
	}

	public String getWinningUnit() {
		return winningUnit;
	}

	public void setWinningUnit(String winningUnit) {
		this.winningUnit = winningUnit;
	}

	public Double getConstructionCosts() {
		return constructionCosts;
	}

	public void setConstructionCosts(Double constructionCosts) {
		this.constructionCosts = constructionCosts;
	}

	public String getProjectType() {
		return projectType;
	}

	public void setProjectType(String projectType) {
		this.projectType = projectType;
	}

	public String getProvince() {
		return province;
	}

	public void setProvince(String province) {
		this.province = province;
	}

	public String getCity() {
		return city;
	}

	public void setCity(String city) {
		this.city = city;
	}

	public String getDistrict() {
		return district;
	}

	public void setDistrict(String district) {
		this.district = district;
	}

	public String getDetailedAddress() {
		return detailedAddress;
	}

	public void setDetailedAddress(String detailedAddress) {
		this.detailedAddress = detailedAddress;
	}

	public String getProjectStatus() {
		return projectStatus;
	}

	public void setProjectStatus(String projectStatus) {
		this.projectStatus = projectStatus;
	}

	public Date getScheduledCommencementDate() {
		return scheduledCommencementDate;
	}

	public void setScheduledCommencementDate(Date scheduledCommencementDate) {
		this.scheduledCommencementDate = scheduledCommencementDate;
	}

	public Date getPlannedCompletionDate() {
		return plannedCompletionDate;
	}

	public void setPlannedCompletionDate(Date plannedCompletionDate) {
		this.plannedCompletionDate = plannedCompletionDate;
	}

	public Integer getProjectConstructionDays() {
		return projectConstructionDays;
	}

	public void setProjectConstructionDays(Integer projectConstructionDays) {
		this.projectConstructionDays = projectConstructionDays;
	}

	public Date getActualCommencementDate() {
		return actualCommencementDate;
	}

	public void setActualCommencementDate(Date actualCommencementDate) {
		this.actualCommencementDate = actualCommencementDate;
	}

	public Date getSubstantialCompletionDate() {
		return substantialCompletionDate;
	}

	public void setSubstantialCompletionDate(Date substantialCompletionDate) {
		this.substantialCompletionDate = substantialCompletionDate;
	}

	public Integer getActualConstructionDays() {
		return actualConstructionDays;
	}

	public void setActualConstructionDays(Integer actualConstructionDays) {
		this.actualConstructionDays = actualConstructionDays;
	}

	public String getReturnWork() {
		return returnWork;
	}

	public void setReturnWork(String returnWork) {
		this.returnWork = returnWork;
	}

	public String getProjectBrief() {
		return projectBrief;
	}

	public void setProjectBrief(String projectBrief) {
		this.projectBrief = projectBrief;
	}

	public String getCorporateVideo() {
		return corporateVideo;
	}

	public void setCorporateVideo(String corporateVideo) {
		this.corporateVideo = corporateVideo;
	}

	@Override
	public String toString() {
		return "{" +
				"id=" + id +
				", projectName='" + projectName + '\'' +
				", projectReferred='" + projectReferred + '\'' +
				", subsidiaryOrgan='" + subsidiaryOrgan + '\'' +
				", winningUnit='" + winningUnit + '\'' +
				", constructionCosts=" + constructionCosts +
				", projectType='" + projectType + '\'' +
				", province='" + province + '\'' +
				", city='" + city + '\'' +
				", district='" + district + '\'' +
				", detailedAddress='" + detailedAddress + '\'' +
				", projectStatus='" + projectStatus + '\'' +
				", scheduledCommencementDate=" + scheduledCommencementDate +
				", plannedCompletionDate=" + plannedCompletionDate +
				", projectConstructionDays=" + projectConstructionDays +
				", actualCommencementDate=" + actualCommencementDate +
				", substantialCompletionDate=" + substantialCompletionDate +
				", actualConstructionDays=" + actualConstructionDays +
				", returnWork='" + returnWork + '\'' +
				", projectBrief='" + projectBrief + '\'' +
				", corporateVideo='" + corporateVideo + '\'' +
				'}';
	}
}
